package com.valuegroup.smarttodo.data.model;

import org.greenrobot.greendao.annotation.Entity;
import org.greenrobot.greendao.annotation.Id;
import org.greenrobot.greendao.annotation.NotNull;

import java.io.Serializable;
import java.util.Date;

import org.greenrobot.greendao.annotation.Generated;

/**
 * 习惯清单与习惯项关联
 */
@Entity
public class HabitOrderRelate implements Serializable {
    private static final long serialVersionUID = 3562008252232197568L;
    @Id(autoincrement = true)
    private Long id;
    private Long orderId;
    private Long hid;

    // 开始时间
    @NotNull
    private Date beginDt;
    // 截止时间
    @NotNull
    private Date endDt;
    // 截止次数(处理麻烦，暂时屏蔽)
    //private int endCount;

    // 重复类型（依赖开始时间）
    private Integer repeatType;
    // 具体重复规则 Cron 表达式
    //private String repeatCron;
    // 月(1-31)重复或者周(1-7)重复时起始日期
    private int repeatFirst;

    private Integer sort;
    @NotNull
    private Date createdDt;
    @NotNull
    private Date updatedDt;
    @NotNull
    private Integer status;
    @Generated(hash = 1673046366)
    public HabitOrderRelate(Long id, Long orderId, Long hid, @NotNull Date beginDt,
            @NotNull Date endDt, Integer repeatType, int repeatFirst, Integer sort,
            @NotNull Date createdDt, @NotNull Date updatedDt,
            @NotNull Integer status) {
        this.id = id;
        this.orderId = orderId;
        this.hid = hid;
        this.beginDt = beginDt;
        this.endDt = endDt;
        this.repeatType = repeatType;
        this.repeatFirst = repeatFirst;
        this.sort = sort;
        this.createdDt = createdDt;
        this.updatedDt = updatedDt;
        this.status = status;
    }
    @Generated(hash = 1522518964)
    public HabitOrderRelate() {
    }
    public Long getId() {
        return this.id;
    }
    public void setId(Long id) {
        this.id = id;
    }
    public Long getOrderId() {
        return this.orderId;
    }
    public void setOrderId(Long orderId) {
        this.orderId = orderId;
    }
    public Long getHid() {
        return this.hid;
    }
    public void setHid(Long hid) {
        this.hid = hid;
    }
    public Date getBeginDt() {
        return this.beginDt;
    }
    public void setBeginDt(Date beginDt) {
        this.beginDt = beginDt;
    }
    public Date getEndDt() {
        return this.endDt;
    }
    public void setEndDt(Date endDt) {
        this.endDt = endDt;
    }
    public Integer getRepeatType() {
        return this.repeatType;
    }
    public void setRepeatType(Integer repeatType) {
        this.repeatType = repeatType;
    }
    public int getRepeatFirst() {
        return this.repeatFirst;
    }
    public void setRepeatFirst(int repeatFirst) {
        this.repeatFirst = repeatFirst;
    }
    public Integer getSort() {
        return this.sort;
    }
    public void setSort(Integer sort) {
        this.sort = sort;
    }
    public Date getCreatedDt() {
        return this.createdDt;
    }
    public void setCreatedDt(Date createdDt) {
        this.createdDt = createdDt;
    }
    public Date getUpdatedDt() {
        return this.updatedDt;
    }
    public void setUpdatedDt(Date updatedDt) {
        this.updatedDt = updatedDt;
    }
    public Integer getStatus() {
        return this.status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }


}
